/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.dp1.pucp.Logistica.Controlador;

import com.dp1.pucp.Modelo.Clases.*;
import com.dp1.pucp.Logistica.DAO.*;
import com.dp1.pucp.Logistica.Vista.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

/**
 *
 * @author ubuntu64
 */
public class KardexControlador {
    private TipoProductoDAO m;
    private KardexGUI2 detalleKardexView;
    private MantPedidoCompraControlador mantPedidoControlador;
    private ArrayList<Kardex> lstDetalleKardex;
    private ArrayList<String> lstMotivo;
    private ArrayList<Lineapedidocompra> lstLineaPedido;

    public KardexControlador(TipoProductoDAO dao, KardexGUI2 v){
        m = dao;
        detalleKardexView = v;
        llenarTipoMotivo();
        detalleKardexView.addLimpiarListener(new limpiarListener());
        detalleKardexView.addBuscarListener(new listarDetalle() );
    }

    class limpiarListener implements ActionListener{
        @Override
        public void actionPerformed(ActionEvent e) {
            detalleKardexView.LimpiarDatos();
        }        
    }
    
    private void llenarTipoMotivo(){
        lstMotivo = m.listarMotivoAjuste();
        detalleKardexView.llenaComboMotivo(lstMotivo);
    }
    
    class listarDetalle implements ActionListener
    {
        @Override
        public void actionPerformed(ActionEvent e) {
            int motivo=detalleKardexView.getEstado();
            
            String SMotivo=null;
            if(motivo==0)
                SMotivo="Seleccionar";
            if(motivo==1)
                SMotivo="Rotura";
            if(motivo==2)
                SMotivo="Defecto";
            if(motivo==3)
                SMotivo="Reingreso";
            if(motivo==4)
                SMotivo="Ingreso por compra a proveedor";
            
            listarResultados(SMotivo);
        }
    }
    
    public void listarResultados(String motivo){
        lstDetalleKardex = m.listarKardex(motivo);               
        detalleKardexView.llenaGrilla(lstDetalleKardex);        
    }       
     
}
